package rcpexample;

import org.eclipse.jface.action.IMenuManager;
import org.eclipse.jface.action.MenuManager;
import org.eclipse.jface.action.Separator;
import org.eclipse.swt.graphics.Point;
import org.eclipse.ui.IWorkbenchActionConstants;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.actions.ActionFactory;
import org.eclipse.ui.application.ActionBarAdvisor;
import org.eclipse.ui.application.IActionBarConfigurer;
import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
import org.eclipse.ui.application.WorkbenchWindowAdvisor;

public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor {

	public ApplicationWorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer) {
		super(configurer);
	}
	
	@Override
	public ActionBarAdvisor createActionBarAdvisor(
			IActionBarConfigurer configurer) {
		
		return new ApplicationActionBarAdvisor(configurer);
	}

	@Override
	public void preWindowOpen() {
		IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
		configurer.setInitialSize(new Point(800, 300));
		configurer.setShowCoolBar(true);
		configurer.setShowStatusLine(true);
		configurer.setTitle("RCP Application");
        // Show PerspectiveBar
        configurer.setShowPerspectiveBar(true);		      
	}
	@Override
	public void postWindowOpen() {	
		IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
	    // Show MenuBar
        configurer.setShowMenuBar(true);
        // Show ProgressIndicator
        //configurer.setShowProgressIndicator(true);
        //IWorkbenchWindow window = getWindowConfigurer().getWindow();        
        // ApplicationWorkbenchAdvisor advisor = (ApplicationWorkbenchAdvisor) PlatformUI.getWorkbench().getAdapter(ApplicationWorkbenchAdvisor.class);		
		
	}
}
